home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Demos / AppMaker 2.0b3 / Demo AppMaker 1.5 / Demo AppMaker™ / Demo AppMaker™.rsrc / TmpP_107_ModalOneShot < prev    next >
Encoding:
Text File  |  1992-04-08  |  1.9 KB  |  110 lines

  1. { %filename% -- Modal one-shot dialog }
  2. { Created %date% %time% by AppMaker }
  3.  
  4. Unit %unitname%;
  5. Interface
  6.  
  7. Uses
  8. %if lang = MPW%
  9.         Types,
  10.         Quickdraw,
  11.         Controls,
  12.         Dialogs,
  13.         Events,
  14.         Lists,
  15.         Menus,
  16.         StandardFile,
  17.         TextEdit,
  18.  
  19. %end if%
  20.     ResourceDefs,
  21.     Miscellany,
  22.     WindowAids,
  23.     DialogAids;
  24.  
  25. type
  26.     %dlogname%Rec = record
  27.         %for each item gen dialog field%
  28.  
  29.         %if not haveField%
  30.             dummy:        integer;
  31.         %endif%
  32.     end;
  33.     %dlogname%RecPtr%    %= ^%dlogname%Rec;
  34.  
  35. {----------}
  36. Procedure Get%dlogname%    (var %dlogname%:    %dlogname%Rec);
  37.  
  38. {----------}
  39. Implementation
  40.  
  41. %if lang = MPW%
  42.     {$D+}
  43.     {$R+}
  44.     {$OV+}
  45.     {$S %unitname%}
  46.  
  47. %end if%
  48. const
  49.     %for each item gen itemNr%
  50.  
  51. %push needsRefCon%
  52. %for each item gen auxiliary%
  53. %if needsFilter%
  54.     {----------}
  55.     Function Filter%dlogname%%    %(whichDialog:    DialogPtr;
  56.                              var event:            EventRecord;
  57.                              var itemHit:        integer): boolean;
  58.     var
  59.         filtered:        boolean;
  60.         data:            %dlogname%RecPtr;
  61.     Begin
  62.         filtered := false;
  63.         %for each item gen filter%
  64.  
  65.         if not filtered then begin
  66.             filtered := StandardFilter (whichDialog, event, itemHit);
  67.         end;
  68.         Filter%dlogname% := filtered;
  69.     End; {Filter%dlogname%}
  70.  
  71. %endif%
  72. {----------}
  73. Procedure Get%dlogname%    (var %dlogname%:    %dlogname%Rec);
  74. var
  75.     theDialog:        DialogPtr;
  76.     savePort:        GrafPtr;
  77.     itemNr:            integer;
  78. Begin
  79.     GetPort (savePort);
  80.     InitCursor;
  81.     theDialog := GetNewDialog (%dlogname%ID, nil, pointer (-1));
  82.     %if needsRefCon%
  83.         SetWRefCon (theDialog, longint (@%dlogname%));
  84.     %endif%
  85.     SetPort (theDialog);
  86.     with %dlogname% do begin
  87.         %for each item gen set%
  88.  
  89.         ShowWindow (theDialog);
  90.         %for each item gen enable%
  91.  
  92.         %if needsFilter%
  93.             ModalDialog (@Filter%dlogname%, itemNr);
  94.         %else%
  95.             ModalDialog (@StandardFilter, itemNr);
  96.         %end if%
  97.         case itemNr of
  98.             %for each item gen hit%
  99.  
  100.         end; {case}
  101.         %for each item gen finish%
  102.  
  103.     end; {with}
  104.     DisposDialog (theDialog);
  105.     SetPort (savePort);
  106. End; {Get%dlogname%}
  107.  
  108. End. {%unitname%}
  109. %pop needsRefCon%
  110.